package com.jy.wms.dao;

import com.jy.wms.common.base.BaseDao;
import com.jy.wms.pojo.WmsCustomerFile;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
   * @ClassName: WmsCustomerFileMapper.java
   * @Description: TODO(这里用一句话描述这个类的作用)
   * @Author Liyi
   * @Date Wed Oct 11 11:26:05 CST 2017
   */
   public interface WmsCustomerFileMapper extends BaseDao<WmsCustomerFile> {

    /**
     * 获取货主下拉列表选项
     * @param map 包含仓库ID，货主名称
     * @return
     */
    public List<Map<String,Object>> getOwner(@Param("map") Map<Object, String> map);
   /**
    * 插入一条记录
    * @param entity 实体对象
    * @return int
    */
    public Integer baseInsert(@Param("WmsCustomerFile") WmsCustomerFile entity);

   /**
    * 插入一条记录（匹配有值的字段）
    * @param entity 实体对象
    * @return int
    */
   public Integer baseInsertSelective(@Param("WmsCustomerFile") WmsCustomerFile entity);

   /**
    * 删除（根据主键ID删除）
    * @param id 主键
    * @return int
    */
   public Integer baseDeleteByPrimaryKey(@Param("id") String id);

   /**
    * 删除（根据ID 批量删除）
    * @param idList 主键ID列表
    * @return int
    */
    public Integer baseDeleteBathPrimaryKeys(@Param("list") List<String> idList);

    /**
     * 路线下拉列表选择
     * @param xlmc 路线名称
     * @return
     */
    public List<Map<String,Object>> baseSelectLine(@Param("xlmc") String xlmc, @Param("sshzid") String sshzid);
    /**
    * 分页查询
    * @param entity 实体
    * @return List<WmsCustomerFile>
    */
    public List<WmsCustomerFile> baseSelectPage(@Param("WmsCustomerFile") WmsCustomerFile entity);

    /**
    * 查询（根据主键ID查询）
    * @param id 主键ID
    * @return User
    */
    public WmsCustomerFile baseSelectByPrimaryKey(@Param("id") String id);

   /**
    * 查询（根据ID 批量查询）
    * @param idList 主键ID列表
    * @return list
    */
    public Integer baseSelectBathPrimaryKeys(@Param("list") List<WmsCustomerFile> idList);

    /**
     * 查询（根据客户名称查询对应的客户名称的数量）
     * @param khmc 客户名称
     * @return int
     */
    public Integer recheckingByKhmc(@Param("khmc") String khmc, @Param("hzid") String hzid);

    /**
     * 查询（根据客户名称查询对应的客户名称的数量）
     * @param khbh 客户编号
     * @return int
     */
    public Integer recheckingByKhbh(@Param("khbh") String khbh, @Param("hzid") String hzid);

   /**
    *修改 （匹配有值的字段）
    * @param entity 主键ID列表
    * @return int
    */
    public Integer baseUpdateByPrimaryKeySelective(@Param("WmsCustomerFile") WmsCustomerFile entity);

   /**
    *修改（根据主键ID修改）
    * @param entity 主键ID列表
    * @return int
    */
    public Integer baseUpdateByPrimaryKey(@Param("WmsCustomerFile") WmsCustomerFile entity);

    /**
     * 批量作废用户档案
     * @param ids
     * @return
     */
    public Integer cancelAll(@Param("list") List<String> ids);
}
